<?php
namespace Swiftx\Interfaces\View;

interface Engine {

    /**
     * 设置调试模式
     * @param bool $status
     * @return void
     */
    public function setDebug(bool $status);

    /**
     * 模板数据赋值
     * @param string $name
     * @param mixed $value
     * @return void
     */
    public function assign(string $name, $value=null);

    /**
     * 模板数据设置
     * @param $value
     * @return mixed
     */
    public function data($value);

    /**
     * 获取渲染后的模板数据
     * @param string $template
     * @return string
     */
    public function fetch(string $template):string;

    /**
     * 渲染输出模板
     * @param string $template
     * @return void
     */
    public function display(string $template);


}